package cn.software.service;

import cn.software.entity.param.TopicParam;
import cn.software.entity.vo.TopicVo;
import org.springframework.stereotype.Service;

import java.util.List;


public interface TopicService {
    boolean addTopic(TopicParam topicParam);

    /**
     * 根据科目id查询题目列表（不显示逻辑删除的题目）
     * @param subjectId 科目id
     * @return topicVo 列表
     */
    List<TopicVo> listTopic(Integer subjectId);

    /**
     * 获取所有题目并分页，默认是10个（不显示逻辑删除的题目）
     * @param curPage 当前页码
     * @return 题目列表 List<TopicVo>
     */
    List<TopicVo> listAllTopic(Integer curPage);

    /**
     * 编辑试题
     * @param topicParam 试题信息
     * @return 编辑是否成功
     */
    boolean editTopic(TopicParam topicParam);

    /**
     * 根据题目id删除题目（逻辑删除）
     * @param topicId 题目id
     * @return 删除是否成功
     */
    boolean deleteTopic(Integer topicId);

    /**
     * 根据题目id获取题目内容
     * @param id 题目id
     * @return 题目内容
     */
    TopicVo getTopic(Integer id);
}
